package com.java.advance.custom.mybatis.session;

import java.util.List;

/**
 * mybatis 暴露给外部的接口，实现增删改查的能力
 * 1、对外提供数据访问的API
 * 2、把外部的请求
 * Created by aivin on 2019/3/10.
 */
public interface SqlSession {

    /**
     * @param statement
     * @param parameter
     * @param <T>
     * @return
     */
    <T> T selectOne(String statement, Object parameter);


    /**
     * @param statement
     * @param parameter
     * @param <E>
     * @return
     */
    <E> List<E> selectList(String statement, Object parameter);

    /**
     * @param type
     * @param <T>
     * @return
     */
    <T> T getMapper(Class<T> type);
}
